/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package BD;

import BE.Descuentoxproducto;
import BL.ProductoBL;
import java.math.BigDecimal;
import java.util.List;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.Transaction;

/**
 *
 * @author dennis
 */
public class DescuentoxProdBD {

    private Session session;

    public DescuentoxProdBD() {

        this.session = null;

    }

    public void buscarDescxProd(ProductoBL objProductoBL) {

        List<Descuentoxproducto> lista = null;
        String consulta = "";

        Transaction tx = null;

        try {
            session = HibernateUtil.getSessionFactory().getCurrentSession();
            tx = session.beginTransaction();

            for (int i = 0; i < objProductoBL.getArrProducto().size(); i++) {
                consulta = "Select {descuentoxproducto.*} " +
                        "From descuentoxproducto " +
                        "where srl_idproducto=" + objProductoBL.getArrProducto().get(i).getSrlIdproducto() + " and bool_inactivo= false";

                SQLQuery sqlquery = session.createSQLQuery(consulta);
                sqlquery.addEntity("descuentoxproducto", Descuentoxproducto.class);

                session.flush();
                lista = sqlquery.list();

                if ((lista != null)&&(lista.size()>0)) {
                    double douAux = objProductoBL.getArrProducto().get(i).getRlPreciocosto().doubleValue();
                    objProductoBL.getArrProducto().get(i).setRlPreciocosto(new BigDecimal(objProductoBL.getArrProducto().get(i).getRlPreciocosto().doubleValue() * (1 - lista.get(0).getRlPorcentajedscto().doubleValue()/100)));
                }

            }
            tx.rollback();
        } catch (Exception e) {
            e.printStackTrace();
            if (tx != null) {
                tx.rollback();
            }
        }
    }
}
